import requests
import response_validator
from commons import extract
import logging

logger = logging.getLogger("")

def runner(k, v, my_var):
    global var_name, value
    my_var={}
    resp = None
    match k:
        case 'request':
            logger.info("正在发送请求")
            my_var["resp"]=requests.request(**v)#因为v里面全是字典使用**号
             #发送请求
        case 'response':
            logger.info("正在断言响应")
            resp=response_validator.validator(my_var["resp"],**v)
             #断言响应
        case 'extract':
            logger.info("正在提取变量")
            #变量提取
            for var_name,var_exp in v.items():#返回字典中的键值对items（）
                value = extract(my_var["resp"],*var_exp)#列表使用一个*
            logger.info(f"{var_name}={value}")
          #还可以继续添加数据库操作




